package top.melody.ecommerce.platform.api.domain.order;

import java.io.Serializable;

import top.melody.ecommerce.common.util.reflect.ReflectUtil;

import java.math.BigDecimal;
import java.util.Date;


/**
 * @author: melody
 * @groupId:rd
 * @createdate:2016-10-18
 * @mail: blentle.huan.ren@gmail.com
 * @description:
 * @since: 1.0
 */
public class OrderDetail implements Serializable {

    /* 自增ID */
    private Integer orderDetailId;
    /* 订单号 */
    private String orderId;
    /* SHOP_CART表主键 */
    private Integer shopCartId;
    /* 消费者用户ID，关联ACCOUNT表主键 */
    private Integer accountId;
    /* 商品ID，关联商品主键 */
    private Integer goodsId;
    /* 商品名称冗余 */
    private String goodsName;
    /* 商品在本平台上的单价 */
    private BigDecimal goodsPrice;
    /* 商品数量 */
    private Integer goodsCount;
    /* 有效：VALID;无效:INVALID */
    private String validStatus;
    /* 已删除：Y;未删除：N */
    private String removeStatus;
    /* 创建时间 */
    private Date createDate;
    /* 最近更新时间 */
    private Date updateDate;

    public OrderDetail() {

    }

    public OrderDetail(Integer orderDetailId, String orderId, Integer shopCartId, Integer accountId, Integer goodsId, String goodsName, BigDecimal goodsPrice, Integer goodsCount, String validStatus, String removeStatus, Date createDate, Date updateDate) {
        this.orderDetailId = orderDetailId;
        this.orderId = orderId;
        this.shopCartId = shopCartId;
        this.accountId = accountId;
        this.goodsId = goodsId;
        this.goodsName = goodsName;
        this.goodsPrice = goodsPrice;
        this.goodsCount = goodsCount;
        this.validStatus = validStatus;
        this.removeStatus = removeStatus;
        this.createDate = createDate;
        this.updateDate = updateDate;
    }

    public Integer getOrderDetailId() {
        return orderDetailId;
    }

    public void setOrderDetailId(Integer orderDetailId) {
        this.orderDetailId = orderDetailId;
    }

    public String getOrderId() {
        return orderId;
    }

    public void setOrderId(String orderId) {
        this.orderId = orderId;
    }

    public Integer getShopCartId() {
        return shopCartId;
    }

    public void setShopCartId(Integer shopCartId) {
        this.shopCartId = shopCartId;
    }

    public Integer getAccountId() {
        return accountId;
    }

    public void setAccountId(Integer accountId) {
        this.accountId = accountId;
    }

    public Integer getGoodsId() {
        return goodsId;
    }

    public void setGoodsId(Integer goodsId) {
        this.goodsId = goodsId;
    }

    public String getGoodsName() {
        return goodsName;
    }

    public void setGoodsName(String goodsName) {
        this.goodsName = goodsName;
    }

    public BigDecimal getGoodsPrice() {
        return goodsPrice;
    }

    public void setGoodsPrice(BigDecimal goodsPrice) {
        this.goodsPrice = goodsPrice;
    }

    public Integer getGoodsCount() {
        return goodsCount;
    }

    public void setGoodsCount(Integer goodsCount) {
        this.goodsCount = goodsCount;
    }

    public String getValidStatus() {
        return validStatus;
    }

    public void setValidStatus(String validStatus) {
        this.validStatus = validStatus;
    }

    public String getRemoveStatus() {
        return removeStatus;
    }

    public void setRemoveStatus(String removeStatus) {
        this.removeStatus = removeStatus;
    }

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    public Date getUpdateDate() {
        return updateDate;
    }

    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }

    @Override
    public String toString() {
        return ReflectUtil.fieldsToString(this);
    }
}
